package com.easygem.common.model.front;

import com.baomidou.mybatisplus.annotation.TableField;
import com.wuwenze.poi.annotation.Excel;
import com.wuwenze.poi.annotation.ExcelField;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.List;

/**
 * @author 李鹏志
 * @version 1.0
 * @Description TODO
 * @date 2024/12/23 14:46
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Excel("taskpackage_resource")
@Table(name = "`taskpackage_resource`")
public class TaskPackageResource {
    /**
     * 任务包资源编号
     */
    @Id
    @Column(name = "`tpResourceId`")
    private Long tpResourceId;
    /**
     * 任务包编号
     */
    @Column(name = "`taskPackageId`")
    private Integer taskPackageId;
    /**
     * 资源编号
     */
    @Column(name = "`resourceId`")
    @ExcelField(value = "编号", width = 100) //导出字段名
    private Long resourceId;

    /**
     * 任务包名称
     */
    @TableField(exist = false)
    private String taskPackageName;
    /**
     * 客户名称
     */
    @TableField(exist = false)
    @ExcelField(value = "客户名称", width = 200)
    private String resourceName;
    /**
     * 电话A
     */
    @TableField(exist = false)
    @ExcelField(value = "电话A", width = 200)
    private String phoneA;
    /**
     * 电话B
     */
    @TableField(exist = false)
    @ExcelField(value = "电话B", width = 200)
    private String phoneB;

    /**
     * 查询用电话
     */
    @TableField(exist = false)
    private String phone;
    /**
     * 资源标签 0:未标记 1:无效 2:待定 3:有效 默认：0
     */
    @TableField(exist = false)
    private Integer resourceTag;
    /**
     * 归属人
     */
    @TableField(exist = false)
    private Long userId;

    /**
     * 归属人姓名
     */

    @TableField(exist = false)
    private transient String userName;
    /**
     * 联系人姓名
     */
    @TableField(exist = false)
    @ExcelField(value = "联系人姓名", width = 150)
    private String linkman;
    /**
     * 客户是否存在 0:不存在 1：已存在 默认：0
     */
    @TableField(exist = false)
    private Integer isExists;
    /**
     * 行业类别
     */
    @TableField(exist = false)
    private Integer industryId;

    /**
     *  行业类别名
     */
    @TableField(exist = false)
    private String options;
    /**
     * 备注
     */
    @ExcelField(value = "备注", width = 500)
    @TableField(exist = false)
    private String remark;
    /**
     * 创建时间
     */
    @TableField(exist = false)
    private String createTime;

    /**
     * 开始日期
     */
    @TableField(exist = false)
    private String startDate;
    /**
     * 最后拨打时间
     */
    @TableField(exist = false)
    private String lastCallTime;
    /**
     * 修改时间
     */
    @TableField(exist = false)
    private String editTime;
    /**
     * 结束日期
     */
    @TableField(exist = false)
    private String endDate;
    /**
     * 时间类型 0：创建时间 1：最后拨打时间 2：最后更新时间
     */
    @TableField(exist = false)
    private Integer timeType;
    /**
     * 是否已呼 0:未呼 1:已呼 默认：0
     */
    @TableField(exist = false)
    private Integer isCall;
    /**
     * 部门编号
     */
    @TableField(exist = false)
    private List<Long> ids;

    /**
     * 账户名称
     */
    @TableField(exist = false)
    private String accountName;

    // 级别字段，用整数表示不同标签类型，对应数据库中的int类型
    @Column(name = "`richClass`")
    @ApiModelProperty("级别 1:总部2:前台超管3:部门管理员4:普通用户 默认：1")
    private Integer richClass;
}
